代码:
class Solution {
public:
vector<int> twoSum\(vector<int>& nums, int target\) {
int i,j,num1,num2;int flag=0;
for \(i=0;i<nums.size\(\);i++\)
{ if\(flag==1\) break;
else{
for \(j=i+1;j<nums.size\(\);j++\){
if\(nums\[i\]+nums\[j\]==target\){
num1=i;num2=j; flag=1;break;}
else{
flag=0;
}
}
}
}
vector<int> results;
if \(flag==1\){results.push\_back\(num1\);results.push\_back\(num2\); return results;}
else{results.push\_back\(nums.size\(\)\);results.push\_back\(nums.size\(\)\); return results;}
}
};
遇到的问题:
vector<int>& nums 类似于一个数组,而不是一个指向数组的指针,所以要用数组i的元素,是nums[i],而不是*(num+i)
数组大小是nums.size(),而不是sizeof()
j可以从i开始考虑
vector的压入是push_back()